www.gusucode.com > ROCKOA PHP协同办公OA办公系统 v2.0PHP源码程序 > ROCKOA PHP协同办公OA办公系统 v2.0/rockoa_v2.0/rockoa_v2.0/webrock/system/menu/menuAction.php
<?php class menuClassAction extends Action { public $rows = array(); public function initAction() { $this->table = $this->T('menu'); } public function defaultAction() { $this->title = '菜单管理'; $where = $this->getWhere(); if($where == ''){ $this->rows = $this->getmenus(0); }else{ $this->rows = m('menu')->getall("`id`>0 $where"); } $header = array( 'name' => '菜单名,edit,left', 'url' => '链接地址,edit', 'num' => '编号,edit', 'sort' => '序号,edit', 'icons' => '图标,edit', 'status' => '启用,checkbox,edit', 'ispir' => '权限,checkbox,edit', 'isopen' => '展开,checkbox,edit', 'id' => 'ID' ); $this->smartydata['header'] = $this->icovheader($header); $this->smartydata['rs'] = $this->rows; } public function getmenus($pid) { $menu = $this->db->getall("select `name`,`id`,`icons`,`url`,`num`,sort,`level`,`status`,`ispir`,`isopen`,(select count(1) from `$this->table` where `pid`=a.`id`)as `stotal` from `$this->table` a where `pid`='$pid' order by `sort`"); foreach($menu as $k=>$rs){ if($rs['stotal'] >0 ){ $menu[$k]['children'] = $this->getmenus($rs['id']); } } return $menu; } /** 保存 */ public function saveAjax() { $id = (int)$this->rock->post('idPost'); $pid = (int)$this->rock->post('pidPost'); $num = $this->rock->post('numPost'); $msg = ''; if(!$this->rock->isempt($num)){ if($this->db->rows($this->table,"`num`='$num' and `id`<>$id ")>0)$msg = '编号['.$num.']已存在'; } if($msg == ''){ $arr = array( 'level' => (int)$this->db->getmou($this->table,'level',"`id`='$pid'")+1, //级别 'pid' => $pid, 'name' => $this->rock->post('namePost'), 'url' => $this->rock->post('urlPost'), 'icons' => $this->rock->post('iconsPost'), 'color' => $this->rock->post('colorPost'), 'status' => $this->rock->post('statusPost'), 'ispir' => $this->rock->post('ispirPost'), 'sort' => $this->rock->post('sortPost'), 'num' => $num, 'indate'=> $this->now ); $where = ''; if($id !=0)$where = "`id`='$id'"; if(!$this->db->record($this->table, $arr, $where))$msg = $this->db->error(); } if($msg=='')$msg='success'; echo $msg; } /** 获取编辑信息 */ function getinforAjax() { $id = (int)$this->rock->get('id'); echo json_encode($this->db->getone($this->table,"`id`='$id'")); } /** 删除 */ function delAjax() { $id = (int)$this->rock->get('id'); $msg = ''; if($this->db->rows($this->table,"`pid`=$id")>0)$msg='存在下级栏目不能删除!'; if($msg == ''){ if(!$this->db->delete($this->table,"`id`='$id'"))$msg= $this->db->error(); } if($msg=='')$msg='success'; echo $msg; } }